package com.totem.order.controller;

import com.totem.base.model.Result;
import com.totem.base.mybatis.controller.BaseController;
import com.totem.order.api.ITOrderServiceApi;
import com.totem.order.model.TOrders;
import com.totem.order.service.ITOrderService;
import com.totem.order.vo.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RestController;

@Slf4j
@RestController
public class OrderController extends BaseController<ITOrderService, TOrders> implements ITOrderServiceApi {
    @Override
    public Result<GoodsOrderVO> orderGoods(GoodsOrderVO vo) {
        return Result.success(service.orderGoods(vo));
    }

    @Override
    public Result<FundOrderVO> orderFund(FundOrderVO vo) {
        return Result.success(service.orderFund(vo));
    }

    @Override
    public Result<RechargeOrderVO> orderRecharge(RechargeOrderVO vo) {
        return Result.success(service.orderRecharge(vo));
    }

    @Override
    public Result<SubscribeOrderVO> orderSubscribe(SubscribeOrderVO vo) {
        return Result.success(service.orderSubscribe(vo));
    }

    @Override
    public Result<WithdrawOrderVO> orderWithdraw(WithdrawOrderVO vo) {
        return Result.success(service.orderWithdraw(vo));
    }

    @Override
    public Result<WithdrawChargeVO> withdrawCharge(WithdrawChargeVO vo) {
        return Result.success(service.withdrawCharge(vo));
    }

    @Override
    public Result<ConversionOrderVO> orderConversion(ConversionOrderVO vo) {
        return Result.success(service.orderConversion(vo));
    }

    @Override
    public Result<ConversionChargeVO> conversionCharge(ConversionChargeVO vo) {
        return Result.success(service.conversionCharge(vo));
    }

    @Override
    public Result<CancelOrderVO> cancelOrder(CancelOrderVO vo) {
        return Result.success(service.cancelOrder(vo));
    }

    @Override
    public Result<DeleteOrderVO> deleteOrder(DeleteOrderVO vo) {
        return Result.success(service.deleteOrder(vo));
    }

}
